#ifndef _PIANO_PROGRAM_UI_TEST_H_
#define _PIANO_PROGRAM_UI_TEST_H_

#include <ne.h>

namespace pp
{
    class UITest : public ne::Singleton<UITest>
    {
        public:
            UITest();

            bool tick();

            bool render();

            virtual ~UITest();

        public:
            static UITest& GetSingleton();

            static UITest* GetSingletonPtr();

        private:
            ne::Engine *mpEngine;
            ne::RenderSystem *mpRenderSystem;
            ne::Mouse *mpMouse;
            ne::Vector2 mMousePosition;
            ne::Timer *mpTimer;
            ne::AtlasPtr mpAtlas;
            ne::UIWindow *mpUIWindow;
            ne::MaterialPtr mpAtlasMaterial;
            ne::MaterialPtr mpFontMaterial;
            ne::PrimitiveDeclarationPtr mpAtlasPrimitive;
            ne::PrimitiveDeclarationPtr mpFontPrimitive;
    };
}

#endif
